<html
    xmlns="http://www.w3.org/1999/xhtml"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:ui="http://java.sun.com/jsf/facelets"
    xmlns:p="http://primefaces.org/ui">

    <ui:composition template="layout.xhtml">
        <ui:define name="title">
            Pesquisar Títulos e Documentos
        </ui:define>

        <ui:define name="content">
            <h:form id="pesquisarTituloDocumentoForm">

                <p:messages id="pesquisarTituloDocumentoMessages" autoUpdate="true" />

                <div class="actions">
                    <div id="buttons">
                        <p:button value="Cadastrar Títulos e Documentos" outcome="criarTituloDocumento.xhtml"
                                  icon="ui-icon-plus" styleClass="ui-priority-primary">
                        </p:button>
                    </div>
                </div> 

                <p:fieldset legend="Filtros" id="dadosFieldset">
                    <f:validateBean disabled="true">

                        <div class="row">
                            <div class="column2">
                                <p:outputLabel value="Número" for="numeroInputText" />
                            </div>
                            <div class="column3">
                                <p:inputText id="numeroInputText" value="#{ managerPesquisarTituloDocumento.tituloDocumento.numero }"
                                             />
                            </div>
                        </div>

                        <div class="row">
                            <div class="column2">
                                <p:outputLabel value="Tipo do Ato" for="atoTipoAutoComplete" />
                            </div>
                            <div class="column3">
                                <p:autoComplete id="atoTipoAutoComplete" value="#{ managerPesquisarTituloDocumento.tituloDocumento.atoTipo }"
                                                forceSelection="true" dropdown="true" var="atoTipo" itemValue="#{ atoTipo }" 
                                                itemLabel="#{ atoTipo.descricao }" completeMethod="#{ managerPesquisarTituloDocumento.autocompletarAtoTipo }"
                                                converter="conversoratotipotitulodocumento" minQueryLength="3" >
                                    <p:ajax event="itemSelect" oncomplete="widthFix();"
                                            update="@this, qualidadeFisicaAutoComplete, qualidadeJuridicaAutoComplete"/>
                                </p:autoComplete>
                            </div>

                            <div class="column2">
                                <p:outputLabel value="Data" for="dataCalendar" />
                            </div>
                            <div class="column3">
                                <p:calendar id="dataCalendar" value="#{ managerPesquisarTituloDocumento.tituloDocumento.data }"
                                            showOn="button" pattern="dd/MM/yyyy" locale="pt" navigator="true"                                      />
                            </div>                      
                        </div>

                        <div class="row">
                            <div class="column2">
                                <p:outputLabel value="Livro" for="livroInputText" />
                            </div>
                            <div class="column3">
                                <p:inputText id="livroInputText" value="#{ managerPesquisarTituloDocumento.tituloDocumento.livro }"
                                             />
                            </div>
                            <div class="column2">
                                <p:outputLabel value="Complemento do Livro" for="livroComplementoInputText" />
                            </div>
                            <div class="column3">
                                <p:inputText id="livroComplementoInputText" value="#{ managerPesquisarTituloDocumento.tituloDocumento.livroComplemento }" />
                            </div>                        
                        </div>

                        <div class="row">
                            <div class="column2">
                                <p:outputLabel value="Folha" for="folhaInputText" />
                            </div>
                            <div class="column3">
                                <p:inputText id="folhaInputText" value="#{ managerPesquisarTituloDocumento.tituloDocumento.folha }"
                                             />
                            </div>
                            <div class="column2">
                                <p:outputLabel value="Complemento do Folha" for="folhaComplementoInputText" />
                            </div>
                            <div class="column3">
                                <p:inputText id="folhaComplementoInputText" value="#{ managerPesquisarTituloDocumento.tituloDocumento.folhaComplemento }" />
                            </div>
                        </div>

                    </f:validateBean>
                </p:fieldset>

                <p:fieldset legend="Partes" id="partesFieldset">

                    <div class="row">
                        <div class="column2">
                            <p:outputLabel value="Pessoa" for="tipoPessoaSelectOneMenu" />
                        </div>                        
                        <div class="column10">
                            <p:selectOneRadio id="tipoPessoaSelectOneMenu" value="#{ managerPesquisarTituloDocumento.partePesquisar.pessoa.tipoPessoa }">
                                <f:selectItems value="#{ enums.tiposPessoa() }" />
                                <p:ajax event="change" update="partesFieldset" oncomplete="widthFix();" />
                            </p:selectOneRadio>
                        </div>
                    </div>

                    <p:panel styleClass="column12 noborder" rendered="#{ managerPesquisarTituloDocumento.partePesquisar.pessoa.tipoPessoa eq 'FISICA' }">
                        <div class="row">
                            <div class="column2">
                                <p:outputLabel value="CPF" for="cpfInputMask" />
                            </div>
                            <div class="column3">
                                <p:inputMask id="cpfInputMask" value="#{ managerPesquisarTituloDocumento.partePesquisar.pessoa.cpf  }"
                                             mask="999.999.999-99" />
                            </div>
                            <div class="column2">
                                <p:outputLabel value="Qualidade" for="qualidadeFisicaAutoComplete" />
                            </div>
                            <div class="column3">
                                <p:autoComplete id="qualidadeFisicaAutoComplete" value="#{ managerPesquisarTituloDocumento.partePesquisar.qualidade }"
                                                disabled="#{ managerPesquisarTituloDocumento.tituloDocumento.atoTipo == null }"
                                                forceSelection="true" dropdown="true" var="qualidade" itemValue="#{ qualidade }" 
                                                itemLabel="#{ qualidade.descricao }" completeMethod="#{ managerPesquisarTituloDocumento.autocompletarQualidade }"
                                                converter="conversorqualidade" minQueryLength="3" />
                            </div>                            
                        </div>

                        <!--                            <div class="row">
                                                        <div class="column2">
                                                            <p:outputLabel value="Nome" for="nomeInputText" />
                                                        </div>
                                                        <div class="column8">
                                                            <p:inputText id="nomeInputText" value="#{ managerPesquisarTituloDocumento.partePesquisar.pessoa.nome }"
                                                                 />
                                                        </div>
                                                    </div>-->
                    </p:panel>

                    <p:panel styleClass="column12 noborder" rendered="#{ managerPesquisarTituloDocumento.partePesquisar.pessoa.tipoPessoa eq 'JURIDICA' }">
                        <div class="row">
                            <div class="column2">
                                <p:outputLabel value="CNPJ" for="cnpjInputMask" />
                            </div>
                            <div class="column3">
                                <p:inputMask id="cnpjInputMask" value="#{ managerPesquisarTituloDocumento.partePesquisar.pessoa.cnpj  }" mask="99.999.999/9999-99" />
                            </div>
                            <div class="column2">
                                <p:outputLabel value="Qualidade" for="qualidadeJuridicaAutoComplete" />
                            </div>
                            <div class="column3">
                                <p:autoComplete id="qualidadeJuridicaAutoComplete" value="#{ managerPesquisarTituloDocumento.partePesquisar.qualidade }"
                                                disabled="#{ managerPesquisarTituloDocumento.tituloDocumento.atoTipo == null }"
                                                forceSelection="true" dropdown="true" var="qualidade" itemValue="#{ qualidade }" 
                                                itemLabel="#{ qualidade.descricao }" completeMethod="#{ managerPesquisarTituloDocumento.autocompletarQualidade }"
                                                converter="conversorqualidade" minQueryLength="3" />
                            </div>
                        </div>

                        <div class="row">
                            <div class="column2">
                                <p:outputLabel value="Nome Fantasia" for="nomeFantasiaInputText" />
                            </div>
                            <div class="column8">
                                <p:inputText id="nomeFantasiaInputText" value="#{ managerPesquisarTituloDocumento.partePesquisar.pessoa.nome }" />
                            </div>
                        </div>

                    </p:panel>
                </p:fieldset>                    

                <div class="command">
                    <p:commandButton
                        id="pesquisarcommandButton" value="Pesquisar" icon="ui-icon-search"
                        styleClass="ui-priority-primary" oncomplete="widthFix();"
                        update="@form" actionListener="#{ managerPesquisarTituloDocumento.pesquisar() }" />
                    <p:commandButton value="Limpar" icon="ui-icon-close" oncomplete="widthFix();"
                                     update="@form" actionListener="#{ managerPesquisarTituloDocumento.limpar() }" />                 
                </div>

                <p:dataTable styleClass="column12" id="titulosDocumentosDataTable" var="tituloDocumento"
                             value="#{ managerPesquisarTituloDocumento.titulosDocumentos }"
                             rows="10" paginator="true" paginatorPosition="bottom" emptyMessage="Nenhuma Tipo do Ato encontrado">                    

                    <p:column width="5%" headerText="Opções">
                        <div class="options1">
                            <p:button
                                title="Visualizar" href="visualizarTituloDocumento.xhtml?tituloDocumentoId=#{ tituloDocumento.id }"
                                icon="ui-icon-search"/>
                        </div>
                    </p:column>

                    <p:column headerText="Número" width="20%">
                        <h:outputText value="#{ tituloDocumento.numero }" />
                    </p:column>
                    <p:column headerText="Livro" width="20%">
                        <h:outputText value="#{ tituloDocumento.livro }" />
                    </p:column>
                    <p:column headerText="Tipo" width="30%">
                        <h:outputText value="#{ tituloDocumento.atoTipo.descricao }" />
                    </p:column>                    
                    <p:column headerText="Data" width="20%">
                        <h:outputText value="#{ tituloDocumento.data }">
                            <f:convertDateTime pattern="dd/MM/yyyy" />
                        </h:outputText>
                    </p:column>                    

                </p:dataTable>

            </h:form>
        </ui:define>
    </ui:composition>

</html>